package com.ztrue.framework.core.domain;

/**
 * 表示一个聚合根缓存对象
 *
 * @author zhangw
 * @date 2016/11/2 15:12
 * @version: 1.0
 */
public interface IAggregateRootCache {
    /**
     * 缓存一个聚合根对象
     *
     * @param aggregateRoot
     */
    void set(IAggregateRoot aggregateRoot);

    /**
     * 根据聚合根ID从缓存中获取一个聚合根对象
     *
     * @param id
     * @param <T>
     * @return
     */
    <T extends IAggregateRoot> T get(String id);
}
